﻿using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations.Schema;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Volo.Abp.Domain.Entities;

namespace wangyaxin.Jiangzhenying.WorkstationWorkers.Dto
{
    public class WorkstationWorkerDto: Entity<int>
    {
        /// <summary>
        /// 流水ID
        /// </summary>
        [Column("RECORD_ID")]
        public int RecordId { get; set; }

        /// <summary>
        /// 工作站ID
        /// </summary>
        [Column("WORKSTATION_ID")]
        public int WorkstationId { get; set; }

        /// <summary>
        /// 岗位ID
        /// </summary>
        [Column("POST_ID")]
        public int PostId { get; set; }

        /// <summary>
        /// 岗位编号
        /// </summary>
        [Column("POST_CODE")]
        [Required]
        [MaxLength(64)]
        public string PostCode { get; set; } = string.Empty;

        /// <summary>
        /// 岗位名称
        /// </summary>
        [Column("POST_NAME")]
        [Required]
        [MaxLength(255)]
        public string PostName { get; set; } = string.Empty;

        /// <summary>
        /// 数量，默认为1
        /// </summary>
        [Column("QUANTITY")]
        [DefaultValue(1)]
        public int Quantity { get; set; }

        /// <summary>
        /// 备注
        /// </summary>
        [Column("REMARK")]
        [MaxLength(500)]
        public string? Remark { get; set; }

        /// <summary>
        /// 创建人
        /// </summary>
        [Column("CREATE_BY")]
        [MaxLength(64)]
        public string? CreateBy { get; set; }

        /// <summary>
        /// 创建时间
        /// </summary>
        [Column("CREATE_TIME")]
        public DateTime? CreateTime { get; set; }

        /// <summary>
        /// 更新人
        /// </summary>
        [Column("UPDATE_BY")]
        [MaxLength(64)]
        public string? UpdateBy { get; set; }

        /// <summary>
        /// 更新时间
        /// </summary>
        [Column("UPDATE_TIME")]
        public DateTime? UpdateTime { get; set; }
    }
}
